﻿// -----------------------------------------------------------------------
// <copyright file="WriterReader.cs" company="">
// TODO: Update copyright text.
// </copyright>
// -----------------------------------------------------------------------

namespace logika
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    /// <summary>
    /// TODO: Update summary.
    /// </summary>
    public class Node
    {
        public int wiek = 0;
        public string sekwencja;
        public List<Node> potomne; 

        public Node(string dna, int wiek = 0)
        {
            this.sekwencja = dna;
            this.wiek = wiek;
            potomne = new List<Node>();
        }
        
        public void rozdziel()
        {
            potomne.Add(new Node(sekwencja, wiek));
            potomne.Add(new Node(sekwencja, wiek));
        }

        public string drukuj_liscie(int start_wiek = 0)
        {            
            if (potomne.Count > 0)
            {
                string drzewko = "(";
                foreach (var p in potomne)
                {
                    drzewko += p.drukuj_liscie(start_wiek + p.wiek) + ((potomne.IndexOf(p) < potomne.Count-1) ? "," : "");
                }                
                return drzewko + ")";
            }
                
            else return this.GetHashCode() + "_" + sekwencja;
        }
    }
}
